var cOrgId = "";
var cOrgPath = "";
var picPath = "";

var loginNameQueryStr = "";
var staffNameQueryStr = "";
var eMailQueryStr = "";

var staffPanel = function() {
	return {
		// 获取面板
		getStaffPanel : function() {
			var staffStore = Ext.create('Ext.data.Store', {
				pageSize : globalPageSize,
				// autoLoad: true,
				model : 'staffModel',
				proxy : {
					type : 'ajax',
					url : 'staffServlet?action=getStaffListByCon',
					reader : {
						type : 'json',
						root : 'rows',
						totalProperty : 'total'
					}
				}
			});

			staffStore.on('beforeload', function(store, options) {

				var para = {};
				para.currentOrgId = cOrgId;
				para.staffName = loginNameQueryStr;
				para.loginName = staffNameQueryStr;
				para.email = eMailQueryStr;
				var paraStr = Ext.encode(para);

				var new_para = {
					condition : paraStr
				};
				Ext.apply(store.proxy.extraParams, new_para);
			});

			var pb = Ext.create("Ext.toolbar.Paging", {
				pageSize : globalPageSize,
				store : staffStore,
				displayInfo : true,
				displayMsg : '共{2}条 当前显示第{0} - {1}条记录',
				emptyMsg : '没有数据'
			});

			var selModel = Ext.create('Ext.selection.CheckboxModel');

			function getPath() {
				return cOrgPath;
			}

			var staffpanel = Ext.create("Ext.grid.Panel", {
				selModel : selModel,
				region : 'center',
				title : '当前机构：',
				iconCls : 'menu-list',
				store : staffStore,
				id : 'staffPanel',
				tbar : this.getToolBar(),
				viewConfig : {
					loadMask : false
				},
				columns : [ {
					header : '员工编号',
					dataIndex : 'staffCode',
					width : 120
				}, {
					header : '姓名',
					flex:1,
					dataIndex : 'staffName',
					width : 120
				}, {
					header : '性别',
					dataIndex : 'sex',
					width : 120,
					renderer:getSexStr
				}, {
					header : '登录账号',
					dataIndex : 'loginName',
					width : 120
				}, {
					header : '电子邮箱',
					dataIndex : 'email',
					width : 150
				}, {
					header : '所属部门机构',
					dataIndex : 'parentDeptName',
					renderer : getPath,
					width : 150
				},
				// {header:'岗位', dataIndex:'postcode',
				// sortable:false,renderer:ellipsisStr},
				{
					header : '创建人',
					dataIndex : 'creator'
				}, {
					header : '创建时间',
					dataIndex : 'createTsStr',
					width : 150
				}, {
					header : '状态',
					dataIndex : 'entityStatus',
					renderer : getStatusStr
				} ],
				bbar : pb
			});

			// 双击打开编辑窗口
			staffpanel.on('itemdblclick', function(obj, record) {
				staffPanel.getEditStaffPanel(staffStore, record).show();
			});

			var treeStore = new Ext.data.TreeStore({
				model : 'orgTreeNodeModel',
				proxy : {
					type : 'ajax',
					url : 'orgServlet?action=getOrgListByPID'
				},
				root : {
					text : '组织机构',
					id : '0',
					// cls:'menu-list',
					orgcode : '0',
					description : '组织机构',
					expanded : false
				}
			});

			var orgTree = new Ext.tree.TreePanel({
				animate : false,
				//collapsible : true,
				split: true,
				region : 'west',
				width : 250,
				border : false,
				viewConfig : {
					loadMask : false
				},
				store : treeStore
			});

			orgTree.on('itemclick', function(view, record, item, index, e, options) {
				cOrgId = record.data.id;
				var temNode = treeStore.getNodeById(cOrgId);
				temNode.expand();

				// 把标题清空
				staffpanel.setTitle("");

				if (record.data.id == '0') {
					staffpanel.setTitle('当前机构：机构');
					cOrgPath = "机构";
				} else {
					var path = record.data.text;
					var pid = record.data.id;
					var currentRecord = record;
					while (pid != '0') {
						var pNode = currentRecord.parentNode;
						path = pNode.data.text + "->" + path;
						pid = pNode.data.id;
						currentRecord = treeStore.getNodeById(pid);
					}
					staffpanel.setTitle("当前机构:" + path);
					cOrgPath = path;
				}

				loginNameQueryStr = "";
				staffNameQueryStr = "";
				eMailQueryStr = "";

				Ext.getCmp("loginNameCom").reset();
				Ext.getCmp("staffNameCom").reset();
				Ext.getCmp("emailCom").reset();

				staffStore.loadPage(1);
			});

			var panel = Ext.create("Ext.panel.Panel", {
				title : '>>当前位置：人员管理->身份注册',
				layout : 'border',
				items : [ orgTree, staffpanel ]
			});

			return panel;
		},

		// 工具栏
		getToolBar : function() {
			var tb = Ext.create("Ext.toolbar.Toolbar", {
				items : [ {
					xtype : 'button',
					icon : 'images/icons/add.png',
					text : '新增',
					handler : function() {
						if (cOrgId == "") {
							Ext.Msg.show({
								title : '提示',
								msg : '请先选择部门!',
								buttons : Ext.Msg.OK,
								icon : Ext.Msg.WARNING
							});
							return false;
						}
						var staffStore = Ext.getCmp('staffPanel').getStore();
						staffPanel.getAddStaffPanel(cOrgId, cOrgPath, staffStore).show();
					}
				}, {
					xtype : 'button',
					icon : 'images/icons/application_edit.png',
					text : '编辑',
					handler : function() {
						var staffStore = Ext.getCmp('staffPanel').getStore();
						var sm = Ext.getCmp('staffPanel').getSelectionModel();
						var count = sm.getCount();
						if (count != 1) {
							Ext.Msg.show({
								title : '提示',
								msg : '请选择一条信息进行编辑!!',
								buttons : Ext.Msg.OK,
								icon : Ext.Msg.WARNING
							});
							return false;
						}
						var selectRecord = sm.getSelection();

						staffPanel.getEditStaffPanel(staffStore, selectRecord[0]).show();
					}
				}, {
					xtype : 'button',
					icon : 'images/icons/delete.png',
					text : '删除',
					handler : function() {
						var sm = Ext.getCmp('staffPanel').getSelectionModel();
						var count = sm.getCount();

						if (count == 0) {
							Ext.Msg.show({
								title : '提示',
								msg : '请选择要删除的条目!',
								buttons : Ext.Msg.OK,
								icon : Ext.Msg.WARNING
							});
							return;
						}

						Ext.Msg.show({
							title : '提示',
							msg : '确认删除所选?',
							buttons : Ext.Msg.YESNO,
							fn : function(btn, text) {
								if (btn == 'yes') {
									var records = sm.getSelection();
									var idArr = [];
									for ( var i = 0; i < count; i++) {
										idArr.push(records[i].data.staffId);
									}

									var deleData = {};
									deleData.idArr = idArr;

									var f = function(data) {
										var suc = data.suc;
										if (suc) {
											Ext.Msg.show({
												title : '提示',
												msg : '删除成功!',
												buttons : Ext.Msg.OK,
												icon : Ext.Msg.INFO
											});
											Ext.getCmp('staffPanel').getStore().loadPage(1);
										} else {
											Ext.Msg.show({
												title : '提示',
												msg : '删除失败!',
												buttons : Ext.Msg.OK,
												icon : Ext.Msg.INFO
											});
										}
									};

									ajax.call({
										servlet : 'staffServlet?action=delete',
										callPara : deleData,
										callBackMethod : f
									});

								} else {
									return false;
								}
							}
						});
					}
				}, {
					xtype : 'button',
					icon : 'images/icons/control_play_blue.png',
					text : '启用',
					handler : function() {
						staffPanel.activeOrUnActiveOrResetPWD('active');
					}
				}, {
					xtype : 'button',
					icon : 'images/icons/control_stop_blue.png',
					text : '停用',
					handler : function() {
						staffPanel.activeOrUnActiveOrResetPWD('unactive');
					}
				}, {
					xtype : 'button',
					icon : 'images/icons/arrow_refresh.png',
					text : '密码复位',
					handler : function() {
						staffPanel.activeOrUnActiveOrResetPWD('resetPWD');
					}
				}, {
					xtype : 'button',
					icon : 'images/icons/text_lowercase.png',
					text : '映射维护',
					handler : function() {
						var staffStore = Ext.getCmp('staffPanel').getStore();
						var sm = Ext.getCmp('staffPanel').getSelectionModel();
						var count = sm.getCount();
						if (count != 1) {
							Ext.Msg.show({
								title : '提示',
								msg : '请选择一条用户信息!!',
								buttons : Ext.Msg.OK,
								icon : Ext.Msg.WARNING
							});
							return false;
						}
						var selectRecord = sm.getSelection();

						staffPanel.getMapPanel(selectRecord[0]).show();
					}
				}, '->', {
					xtype : 'label',
					text : '登录账号:'
				}, {
					xtype : 'textfield',
					width : 80,
					id : 'loginNameCom'
				}, {
					xtype : 'label',
					text : '姓名:'
				}, {
					xtype : 'textfield',
					width : 80,
					id : 'staffNameCom'
				}, {
					xtype : 'label',
					text : '邮箱:'
				}, {
					xtype : 'textfield',
					width : 100,
					id : 'emailCom'
				}, '-', {
					xtype : 'button',
					text : '查询',
					icon : 'images/icons/search.gif',
					iconCls : 'x-btn-icon',
					handler : function() {
						var loginName = Ext.getCmp("loginNameCom").getValue();
						var staffName = Ext.getCmp("staffNameCom").getValue();
						var email = Ext.getCmp("emailCom").getValue();

						if (cOrgId == "") {
							Ext.Msg.show({
								title : '提示',
								msg : '请先选择机构!',
								buttons : Ext.Msg.OK,
								icon : Ext.Msg.WARNING
							});
							return false;
						}

						loginNameQueryStr = loginName;
						staffNameQueryStr = staffName;
						eMailQueryStr = email;

						var staffStore = Ext.getCmp('staffPanel').getStore();
						staffStore.loadPage(1);
					}
				}, {
					xtype : 'button',
					icon : 'images/icons/arrow_undo.png',
					text : '重置',
					handler : function() {
						Ext.getCmp("loginNameCom").reset();
						Ext.getCmp("staffNameCom").reset();
						Ext.getCmp("emailCom").reset();
					}
				}
				]
			});

			return tb;
		},

		// 新增窗口
		getAddStaffPanel : function(cOrgId, cOrgPath, store) {
			
			var staffForm = Ext.create('Ext.form.Panel', {
				border : false,
				autoHeight : true,
				region : 'west',
				width : 500,
				bodyBorder : false,
				bodyStyle : 'padding:10px',
				frame : true,
				fieldDefaults : {
					labelWidth : 100,
					msgTarget : 'side'
				},
				defaults : {
					anchor : '100%'
				},
				items : [ {
					xtype : 'fieldset',
					title : '用户基本信息',
					collapsible : true,
					defaultType : 'textfield',
					layout : 'anchor',
					defaults : {
						anchor : '100%'
					},
					items : [ {
						xtype : 'filefield',
						name : 'photo',
						fieldLabel : '照片',
						buttonText : '选择照片...',
						listeners : {
							change : function(obj) {
								var path = obj.getValue();
								document.getElementById("staffPic").innerHTML = "<img src=" + path + "></img>";
							}
						}
					}, {
						fieldLabel : '员工编号',
						// allowBlank:false,
						name : 'staffCode'
					}, {
						fieldLabel : '姓名',
						allowBlank : false,
						name : 'staffName'
					}, {
						xtype : 'combo',
						name : 'sex',
						fieldLabel : '性别',
						editable : false,
						allowBlank : false,
						store : sex,
						queryMode : 'local',
						displayField : 'name',
						valueField : 'value'
					}, {
						name : 'birthday',
						fieldLabel : '生日',
						// labelWidth: 100,
						// width: 100,
						xtype : 'datefield',
						editable : false,
						format : 'Y-m-d'
					}, {
						fieldLabel : '身份证',
						// allowBlank:false,
						name : 'idcardNo'
					}, {
						fieldLabel : '部门',
						// allowBlank:false,
						name : 'orgName',
						readOnly : true,
						value : cOrgPath
					}, {
						fieldLabel : '岗位',
						// allowBlank:false,
						name : 'post'
					}
					// ,{
					// fieldLabel: '工作组',
					// allowBlank:false,
					// name: 'workGroup'
					// }
					, {
						fieldLabel : '办公电话',
						// allowBlank:false,
						name : 'tel'
					}, {
						fieldLabel : '地址',
						// allowBlank:false,
						name : 'address'
					}, {
						fieldLabel : '电子邮箱',
						// allowBlank:false,
						name : 'email'
					}, {
						fieldLabel : '移动电话',
						// allowBlank:false,
						name : 'mobile'
					}, {
						fieldLabel : '邮编',
						// allowBlank:false,
						name : 'postcode'
					}, {
						fieldLabel : '登录账号',
						allowBlank : false,
						name : 'loginName'
					}, {
						fieldLabel : '密码找回问题',
						// allowBlank:false,
						name : 'problem'
					}, {
						fieldLabel : '密码找回答案',
						// allowBlank:false,
						name : 'answer'
					}, {
						xtype : 'hidden',
						name : 'orgId',
						value : cOrgId
					} ]
				} ]
			});

			var picPanel = new Ext.Panel({
				region : 'center',
				frame : true,
				// width:300,
				html : '<table width=100%><tr height=60><td></td></tr><tr align=center><td><div id="staffPic">照片</div></td></tr></table>'
			});

			var mainPanel = new Ext.Panel({
				layout : 'border',
				height : 480,
				autoHeight : true,
				items : [ picPanel, staffForm ]
			});

			var addUserWin = Ext.create("Ext.window.Window", {
				title : '人员管理->身份注册->新增',
				width : 800,
				modal : true,
				layout : 'fit',
				// bodyStyle:'padding:10px',
				items : [ mainPanel ],
				buttons : [ {
					text : '保存',
					handler : function() {
						if (staffForm.getForm().isValid()) {
							staffForm.submit({
								url : 'staffServlet?action=add',
								waitMsg : '正在保存，请稍候...',
								type : 'ajax',
								success : function() {
									Ext.Msg.show({
										title : '提示',
										msg : '新增信息成功!',
										buttons : Ext.Msg.OK,
										icon : Ext.Msg.INFO
									});

									addUserWin.close();
									store.loadPage(1);
								}
							});
						} else {
							Ext.Msg.show({
								title : '提示',
								msg : '请正确填写相关信息后保存!',
								buttons : Ext.Msg.OK,
								icon : Ext.Msg.WARNING
							});
						}
					}
				}, {
					text : '取消',
					handler : function() {
						addUserWin.close();
					}
				} ]
			});

			return addUserWin;

		},

		// 编辑窗口
		getEditStaffPanel : function(staffStore, selectRecord) {
			var staffForm = Ext.create('Ext.form.Panel', {
				border : false,
				autoHeight : true,
				region : 'west',
				width : 500,
				bodyBorder : false,
				bodyStyle : 'padding:10px',
				frame : true,
				fieldDefaults : {
					labelWidth : 100,
					msgTarget : 'side'
				},
				defaults : {
					anchor : '100%'
				},
				items : [ {
					xtype : 'fieldset',
					title : '用户基本信息',
					collapsible : true,
					defaultType : 'textfield',
					layout : 'anchor',
					defaults : {
						anchor : '100%'
					},
					items : [ {
						xtype : 'filefield',
						name : 'photo',
						fieldLabel : '照片',
						buttonText : '选择照片...',
						listeners : {
							change : function(obj) {
								var path = obj.getValue();
								document.getElementById("staffPic").innerHTML = "<img src=" + path + "></img>";
							}
						}
					}, {
						fieldLabel : '员工编号',
						// allowBlank:false,
						name : 'staffCode',
						value : selectRecord.data.staffCode
					}, {
						fieldLabel : '姓名',
						allowBlank : false,
						name : 'staffName',
						value : selectRecord.data.staffName
					}, {
						xtype : 'combo',
						name : 'sex',
						fieldLabel : '性别',
						editable : false,
						allowBlank : false,
						store : sex,
						queryMode : 'local',
						displayField : 'name',
						valueField : 'value'
					}, {

						name : 'birthday',
						fieldLabel : '生日',
						// labelWidth: 100,
						// width: 100,
						xtype : 'datefield',
						editable : false,
						format : 'Y-m-d',
						value : selectRecord.data.birthdayStr
					}, {
						fieldLabel : '身份证',
						// allowBlank:false,
						name : 'idcardNo',
						value : selectRecord.data.idcardNo
					}, {
						fieldLabel : '部门',
						// allowBlank:false,
						name : 'orgName',
						readOnly : true,
						value : cOrgPath
					}
					// ,{
					// fieldLabel: '岗位',
					// allowBlank:false,
					// name: 'post',
					// value:selectRecord.data.post
					// }
					// ,{
					// fieldLabel: '工作组',
					// allowBlank:false,
					// name: 'workGroup'
					// }
					, {
						fieldLabel : '办公电话',
						// allowBlank:false,
						name : 'tel',
						value : selectRecord.data.tel
					}, {
						fieldLabel : '地址',
						// allowBlank:false,
						name : 'address',
						value : selectRecord.data.address
					}, {
						fieldLabel : '电子邮箱',
						// allowBlank:false,
						name : 'email',
						value : selectRecord.data.staffName
					}, {
						fieldLabel : '移动电话',
						// allowBlank:false,
						name : 'mobile',
						value : selectRecord.data.mobile
					}, {
						fieldLabel : '邮编',
						// allowBlank:false,
						name : 'postcode',
						value : selectRecord.data.postcode
					}, {
						fieldLabel : '登录账号',
						allowBlank : false,
						name : 'loginName',
						value : selectRecord.data.loginName
					}, {
						fieldLabel : '密码找回问题',
						// allowBlank:false,
						name : 'problem',
						value : selectRecord.data.problem
					}, {
						fieldLabel : '密码找回答案',
						// allowBlank:false,
						name : 'answer',
						value : selectRecord.data.answer
					}, {
						xtype : 'hidden',
						name : 'orgId',
						value : selectRecord.data.orgId
					}, {
						xtype : 'hidden',
						name : 'staffId',
						value : selectRecord.data.staffId
					} ]
				} ]
			});

			var picPanel = new Ext.Panel({
				region : 'center',
				frame : true,
				// width:300,
				html : '<table width=100%><tr height=60><td></td></tr><tr align=center><td><div id="staffPic">照片</div></td></tr></table>'
			});

			var mainPanel = new Ext.Panel({
				layout : 'border',
				height : 480,
				autoHeight : true,
				items : [ picPanel, staffForm ]
			});

			var editUserWin = Ext.create("Ext.window.Window", {
				title : '人员管理->身份注册->编辑',
				width : 800,
				modal : true,
				layout : 'fit',
				// bodyStyle:'padding:10px',
				items : [ mainPanel ],
				buttons : [ {
					text : '保存',
					handler : function() {
						if (staffForm.getForm().isValid()) {
							staffForm.submit({
								url : 'staffServlet?action=edit',
								waitMsg : '正在保存，请稍候...',
								type : 'ajax',
								success : function() {
									Ext.Msg.show({
										title : '提示',
										msg : '编辑信息成功!',
										buttons : Ext.Msg.OK,
										icon : Ext.Msg.INFO
									});
									editUserWin.close();
									staffStore.loadPage(1);
								}
							});
						} else {
							Ext.Msg.show({
								title : '提示',
								msg : '请正确填写相关信息后保存!',
								buttons : Ext.Msg.OK,
								icon : Ext.Msg.WARNING
							});
						}
					}
				}, {
					text : '取消',
					handler : function() {
						editUserWin.close();
					}
				} ]
			});

			editUserWin.on('show', function() {
				if (selectRecord.data.sex == '1') {
					staffForm.getForm().setValues({
						sex : '1'
					});
				} else if (selectRecord.data.sex == '2') {
					staffForm.getForm().setValues({
						sex : '2'
					});
				}

				if (selectRecord.data.photo != "") {
					document.getElementById("staffPic").innerHTML = "<img src=upload/photo/" + selectRecord.data.photo + "></img>";
				}

			});

			return editUserWin;

		},
		
		//获取自助服务中用户编辑信息窗体
		getEditStaffPanel4Self : function(staffId) {
			
			var staffForm = Ext.create('Ext.form.Panel', {
				border : false,
				autoHeight : true,
				region : 'west',
				width : 800,
				bodyBorder : false,
				bodyStyle : 'padding:10px',
				frame : true,
				fieldDefaults : {
					labelWidth : 100,
					msgTarget : 'side'
				},
				defaults : {
					anchor : '100%'
				},
				items : [ {
					xtype : 'fieldset',
					title : '用户基本信息',
					collapsible : true,
					defaultType : 'textfield',
					layout : 'anchor',
					defaults : {
						anchor : '100%'
					},
					items : [ {
						xtype : 'filefield',
						name : 'photo',
						fieldLabel : '照片',
						buttonText : '选择照片...',
						listeners : {
							change : function(obj) {
								var path = obj.getValue();
								document.getElementById("staffPic").innerHTML = "<img src=" + path + "></img>";
							}
						}
					}, {
						fieldLabel : '员工编号',
						// allowBlank:false,
						name : 'staffCode'
					}, {
						fieldLabel : '姓名',
						allowBlank : false,
						name : 'staffName'
					}, {
						xtype : 'combo',
						name : 'sex',
						fieldLabel : '性别',
						editable : false,
						allowBlank : false,
						store : sex,
						queryMode : 'local',
						displayField : 'name',
						valueField : 'value'
					}, {
						name : 'birthday',
						fieldLabel : '生日',
						// labelWidth: 100,
						// width: 100,
						xtype : 'datefield',
						editable : false,
						format : 'Y-m-d'
					}, {
						fieldLabel : '身份证',
						// allowBlank:false,
						name : 'idcardNo'
					}, {
						fieldLabel : '部门',
						// allowBlank:false,
						name : 'orgName',
						readOnly : true,
						value : cOrgPath
					}, {
						fieldLabel : '岗位',
						// allowBlank:false,
						name : 'post'
					}
					// ,{
					// fieldLabel: '工作组',
					// allowBlank:false,
					// name: 'workGroup'
					// }
					, {
						fieldLabel : '办公电话',
						// allowBlank:false,
						name : 'tel'
					}, {
						fieldLabel : '地址',
						// allowBlank:false,
						name : 'address'
					}, {
						fieldLabel : '电子邮箱',
						// allowBlank:false,
						name : 'email'
					}, {
						fieldLabel : '移动电话',
						// allowBlank:false,
						name : 'mobile'
					}, {
						fieldLabel : '邮编',
						// allowBlank:false,
						name : 'postcode'
					}, {
						fieldLabel : '登录账号',
						allowBlank : false,
						name : 'loginName'
					}, {
						fieldLabel : '密码找回问题',
						// allowBlank:false,
						name : 'problem'
					}, {
						fieldLabel : '密码找回答案',
						// allowBlank:false,
						name : 'answer'
					}, {
						xtype : 'hidden',
						name : 'orgId',
						value : cOrgId
					}, {
						xtype : 'hidden',
						name : 'staffId'
					}]
				},{
				xtype: 'button',
				anchor:'10%',
				text : '保存',
				handler : function() {
					picPath = staffForm.getForm().findField('photo').getValue();
					if (staffForm.getForm().isValid()) {
						staffForm.submit({
							url : 'staffServlet?action=edit',
							waitMsg : '正在保存，请稍候...',
							type : 'ajax',
							success : function(form,action) {
							//alert(action.result.msg);
								Ext.Msg.show({
									title : '提示',
									msg : '编辑信息成功!',
									buttons : Ext.Msg.OK,
									icon : Ext.Msg.INFO
								});
								document.getElementById("staffPic").innerHTML = "<img src="+picPath+"></img>";
							}
						});
					} else {
						Ext.Msg.show({
							title : '提示',
							msg : '请正确填写相关信息后保存!',
							buttons : Ext.Msg.OK,
							icon : Ext.Msg.WARNING
						});
					}
				}
			}]
			});

			var picPanel = new Ext.Panel({
				region : 'center',
				frame : true,
				// width:300,
				html : '<table width=100%><tr height=60><td></td></tr><tr align=center><td><div id="staffPic">照片</div></td></tr></table>'
			});

			var mainPanel = new Ext.Panel({
				layout : 'border',
				title:'自助服务->基本信息维护',
				//height : 480,
				autoHeight : true,
				frame:true,
				items : [ picPanel, staffForm ]
			});

			mainPanel.on('afterrender', function() {
				
			var f = function(data) {
				var record = data.rows[0];
				
				staffForm.getForm().setValues({
					loginName : record.loginName,
					birthday: record.birthdayStr,
					birthday: record.birthdayStr,
					staffCode: record.staffCode,
					staffName: record.staffName,
					idcardNo: record.idcardNo,
					tel: record.tel,
					address: record.address,
					mobile: record.mobile,
					postcode: record.postcode,
					postcode: record.postcode,
					problem: record.problem,
					answer: record.answer,
					staffId: record.staffId
				});
								
				if (record.sex == '1') {
					staffForm.getForm().setValues({
						sex : '1'
					});
				} else if (record.sex == '2') {
					staffForm.getForm().setValues({
						sex : '2'
					});
				}
				
				if (record.photo != "") {
					document.getElementById("staffPic").innerHTML = "<img src=upload/photo/" + record.photo + "></img>";
				}
				
			};
			
			ajax.call({
				servlet : 'staffServlet?action=getStaffByStaffId&staffId='+staffId,
				//callPara : addData,
				callBackMethod : f
			});
			
				
//				if (selectRecord.data.sex == '1') {
//					staffForm.getForm().setValues({
//						sex : '1'
//					});
//				} else if (selectRecord.data.sex == '2') {
//					staffForm.getForm().setValues({
//						sex : '2'
//					});
//				}
//
//				if (selectRecord.data.photo != "") {
//					document.getElementById("staffPic").innerHTML = "<img src=upload/photo/" + selectRecord.data.photo + "></img>";
//				}

			});

			return mainPanel;

		},
		
		//获取自助服务中修改密码窗体
		getChangePWDWin : function(staffId) {
			
			var pwdForm = Ext.create('Ext.form.Panel', {
				border : false,
				title:'自助服务->修改密码',
				autoHeight : true,
				bodyBorder : false,
				bodyStyle : 'padding:10px',
				frame : true,
				fieldDefaults : {
					labelWidth : 100,
					msgTarget : 'side'
				},
				defaults : {
					anchor : '30%'
				},
				items : [ {
					xtype : 'fieldset',
					title : '密码信息',
					collapsible : true,
					defaultType : 'textfield',
					layout : 'anchor',
					defaults : {
						anchor : '100%'
					},
					items : [ {
						fieldLabel : '旧密码',
						allowBlank:false,
						inputType: 'password',    //密码
						name : 'oldPWD'
					}, {
						fieldLabel : '新密码',
						allowBlank : false,
						inputType: 'password',    //密码
						name : 'newPWD1'
					},  {
						fieldLabel : '确认新密码',
						allowBlank:false,
						inputType: 'password',    //密码
						name : 'newPWD2'
					},{
						xtype : 'hidden',
						name : 'staffId',
						value:staffId
					}]
				},{
						xtype : 'button',
						name : 'b1',
						text:'确定',
						anchor:'5%',
						handler:function(){
							if (pwdForm.getForm().isValid()) {
								
								var oldPWDStr = pwdForm.getForm().findField('oldPWD').getValue();
								var newPWD1Str = pwdForm.getForm().findField('newPWD1').getValue();
								var newPWD2Str = pwdForm.getForm().findField('newPWD2').getValue();
								
								var f = function(data) {
									if (data.suc) {
										if(newPWD1Str != newPWD2Str){
											Ext.Msg.show({
												title : '提示',
												msg : '新密码和确认密码不一致，请重新输入!',
												buttons : Ext.Msg.OK,
												icon : Ext.Msg.WARNING
											});
											pwdForm.getForm().findField('newPWD1').setValue('');
											pwdForm.getForm().findField('newPWD2').setValue('');
											return false;
										}else{
											var f1 = function(data1) {
												if (data1.suc) {
													Ext.Msg.show({
														title : '提示',
														msg : '修改密码成功!',
														buttons : Ext.Msg.OK,
														icon : Ext.Msg.INFO
													});
													
//													pwdForm.getForm().findField('newPWD1').setValue('');
//													pwdForm.getForm().findField('newPWD2').setValue('');
//													pwdForm.getForm().findField('oldPWD').setValue('');
													
												} else {
													Ext.Msg.show({
														title : '提示',
														msg : '修改密码失败!',
														buttons : Ext.Msg.OK,
														icon : Ext.Msg.WARNING
													});
													return false;
												}
											};
											
											ajax.call({
												servlet : 'staffServlet?action=modifyPWD&staffId='+staffId+"&newPWD="+newPWD1Str,
												callBackMethod : f1
											});
											
										}
									} else {
										Ext.Msg.show({
											title : '提示',
											msg : '输入的旧密码不正确，请重新输入!',
											buttons : Ext.Msg.OK,
											icon : Ext.Msg.WARNING
										});
										return false;
									}
								};
		
								ajax.call({
									servlet : 'staffServlet?action=verifyOldPWD&staffId='+staffId+"&oldPWD="+oldPWDStr,
//									callPara : addData,
									callBackMethod : f
								});
								
							} else {
								Ext.Msg.show({
									title : '提示',
									msg : '请正确填写相关信息后保存!',
									buttons : Ext.Msg.OK,
									icon : Ext.Msg.WARNING
								});
							}
						}
					}]
				
			});

			return pwdForm;

		},

		//获取映射窗体
		getMapPanel : function(selectRecord) {
			var store = Ext.create('Ext.data.Store', {
				autoDestroy : true,
				autoLoad : true,
				model : 'userMappingModel',
				proxy : {
					type : 'ajax',
					url : 'userMappingServlet?action=getUserMappingByStaffId&staffId=' + selectRecord.data.staffId,
					reader : {
						type : 'json',
						root : 'rows',
						totalProperty : 'total'
					}
				}
			});

			var rowEditing = Ext.create('Ext.grid.plugin.RowEditing', {
				clicksToMoveEditor : 1,
				autoCancel : false
			});

			var grid = Ext.create('Ext.grid.Panel', {
				store : store,
				stateful : true,
				id : 'propertiesGrid',
				stateId : 'stateGrid',
				columns : [ {
					text : '系统名称',
					flex : 1,
					sortable : false,
					dataIndex : 'appName'
				// , editor: {
				// allowBlank: false
				// }
				}, {
					text : '登录帐号',
					width : 75,
					sortable : true,
					dataIndex : 'userName',
					editor : {
						allowBlank : false
					}
				}, {
					text : '登录密码',
					width : 75,
					sortable : true,
					dataIndex : 'password',
					editor : {
						allowBlank : false
					}
				}, {
					text : '状态',
					width : 75,
					sortable : true,
					dataIndex : 'entityStatus',
					renderer : getStatusStr
				} ],
				height : 200,
				autoScroll : true,
				tbar : [ {
					icon : 'images/icons/add.png',
					text : '保存',
					handler : function() {
						var count = store.getTotalCount();
						if (count == 0) {
							Ext.Msg.show({
								title : '提示',
								msg : '没有数据要保存!',
								icon : Ext.Msg.WARNING,
								buttons : Ext.Msg.OK
							});
							return false;
						}

						var addData = {};
						var objs = new Array();
						store.each(function(item) {
							var userMappingItem = {};
							userMappingItem.appId = item.get("appId");
							userMappingItem.staffId = item.get("staffId");
							userMappingItem.userName = item.get("userName");
							userMappingItem.password = item.get("password");
							userMappingItem.entityStatus = item.get("entityStatus");
							objs.push(userMappingItem);
						});

						addData.userMappingArr = objs;

						var f = function(data) {
							if (data.suc) {
								Ext.Msg.alert('提示', '保存映射信息成功!');
								// 关闭窗口
								store.loadPage(1);
							} else {
								Ext.Msg.alert('提示', '保存映射信息失败!');
							}
						};

						ajax.call({
							servlet : 'userMappingServlet?action=add',
							callPara : addData,
							callBackMethod : f
						});
					}
				}, {
					itemId : 'useProperty',
					xtype : 'button',
					icon : 'images/icons/control_play_blue.png',
					text : '启用',
					disabled : true,
					handler : function() {
						var sm = grid.getSelectionModel();
						var selectRecord = sm.getSelection()[0];
						if (selectRecord.data.entityStatus == '100') {
							Ext.Msg.show({
								title : '提示',
								msg : '请选择非[未知]状态条目进行此操作!',
								icon : Ext.Msg.WARNING,
								buttons : Ext.Msg.OK
							});

							return false;
						}

						if (selectRecord.data.entityStatus == '1') {
							Ext.Msg.show({
								title : '提示',
								msg : '该条目已经是[启用]状态!',
								icon : Ext.Msg.INFO,
								buttons : Ext.Msg.OK
							});

							return false;
						}

						var operaData = {};
						operaData.staffId = selectRecord.data.staffId;
						operaData.appId = selectRecord.data.appId;

						var f = function(data) {
							if (data.suc) {
								Ext.Msg.alert('提示', '启用映射信息成功!');
								// 关闭窗口
								store.loadPage(1);
							} else {
								Ext.Msg.alert('提示', '启用映射信息失败!');
							}
						};

						ajax.call({
							servlet : 'userMappingServlet?action=active',
							callPara : operaData,
							callBackMethod : f
						});

					}
				}, {
					xtype : 'button',
					itemId : 'stopProperty',
					icon : 'images/icons/control_stop_blue.png',
					text : '停用',
					disabled : true,
					handler : function() {
						var sm = grid.getSelectionModel();
						var selectRecord = sm.getSelection()[0];
						if (selectRecord.data.entityStatus == '100') {
							Ext.Msg.show({
								title : '提示',
								msg : '请选择非[未知]状态条目进行此操作!',
								icon : Ext.Msg.WARNING,
								buttons : Ext.Msg.OK
							});

							return false;
						}

						if (selectRecord.data.entityStatus == '0') {
							Ext.Msg.show({
								title : '提示',
								msg : '该条目已经是[停用]状态!',
								icon : Ext.Msg.INFO,
								buttons : Ext.Msg.OK
							});

							return false;
						}

						var operaData = {};
						operaData.staffId = selectRecord.data.staffId;
						operaData.appId = selectRecord.data.appId;

						var f = function(data) {
							if (data.suc) {
								Ext.Msg.alert('提示', '停用映射信息成功!');
								// 关闭窗口
								store.loadPage(1);
							} else {
								Ext.Msg.alert('提示', '停用映射信息失败!');
							}
						};

						ajax.call({
							servlet : 'userMappingServlet?action=unactive',
							callPara : operaData,
							callBackMethod : f
						});
					}
				}, {
					itemId : 'useProperty',
					xtype : 'button',
					icon : 'images/icons/cog.png',
					text : '测试',
					disabled : true,
					handler : function() {

					}
				} ],
				plugins : [ rowEditing ],
				listeners : {
					'selectionchange' : function(view, records) {
						grid.down('#useProperty').setDisabled(!records.length);
						grid.down('#stopProperty').setDisabled(!records.length);
					}
				},
				viewConfig : {
					stripeRows : true
				}
			});

			var mapWin = Ext.create("Ext.window.Window", {
				title : '人员管理->身份注册->映射维护',
				width : 800,
				height : 500,
				modal : true,
				layout : 'fit',
				items : [ grid ]
			});

			return mapWin;

		},
		// 启用、停用或者重设密码
		activeOrUnActiveOrResetPWD : function(action) {
			var sm = Ext.getCmp('staffPanel').getSelectionModel();
			var count = sm.getCount();

			if (count == 0) {
				Ext.Msg.show({
					title : '提示',
					msg : '请选择的条目!',
					buttons : Ext.Msg.OK,
					icon : Ext.Msg.WARNING
				});

				return;
			}

			var records = sm.getSelection();

			var idArr = [];

			for ( var i = 0; i < count; i++) {
				idArr.push(records[i].data.staffId);
			}

			var operaData = {};
			operaData.idArr = idArr;

			var f = function(data) {
				var suc = data.suc;
				if (suc) {
					Ext.Msg.show({
						title : '提示',
						msg : '操作成功!',
						buttons : Ext.Msg.OK,
						icon : Ext.Msg.INFO
					});
					Ext.getCmp('staffPanel').getStore().loadPage(1);
				} else {
					Ext.Msg.show({
						title : '提示',
						msg : '操作失败!',
						buttons : Ext.Msg.OK,
						icon : Ext.Msg.INFO
					});
				}
			};

			ajax.call({
				servlet : 'staffServlet?action=' + action,
				callPara : operaData,
				callBackMethod : f
			});
		}
	};
}();